import { login } from "../../../API/index.js";
Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		registerList: [
			{ id: 'userId', text: '学号' },
			{ id: 'username', text: '姓名' },
			{ id: 'college', text: '学院' },
			{ id: 'className', text: '班级' },
			{ id: 'sex', text: '性别' },
			{ id: 'schoolYearSystem', text: '学年制' },
			{ id: 'admissionYear', text: '入学年份' },
			{ id: 'password', text: ' 密码' }
		],
		userInfo: { //用户基本信息
			userId: '',
			username: '',
			college: '',
			className: '',
			sex: undefined,
			schoolYearSystem: '',
			admissionYear: '',
			role: 'student', // 学生角色
			password: ''
		}
	},
	handleInput(e) {
		console.log(e.currentTarget.dataset.field)
		const field = e.currentTarget.dataset.field;
		const value = e.detail.value;
		this.setData({
			[`userInfo.${field}`]: value
		});
	},

	sexChange(e) {
		this.setData({
			'userInfo.sex': e.detail
		})
	},

	// 注册表单提交处理
	validRegister() {
		const formData = this.data.userInfo

		// 非空验证
		const { userId, username, college, className, sex, schoolYearSystem, admissionYear, password } = formData;

		if (!userId.trim()) {
			wx.showToast({ title: '学号不能为空', icon: 'none' });
			return;
		}
		if (!username.trim()) {
			wx.showToast({ title: '姓名不能为空', icon: 'none' });
			return;
		}
		if (!college.trim()) {
			wx.showToast({ title: '学院不能为空', icon: 'none' });
			return;
		}
		if (!className.trim()) {
			wx.showToast({ title: '班级不能为空', icon: 'none' });
			return;
		}
		if (sex === undefined) {
			wx.showToast({ title: '请选择性别', icon: 'none' });
			return;
		}
		if (!schoolYearSystem.trim()) {
			wx.showToast({ title: '学年制不能为空', icon: 'none' });
			return;
		}
		if (!admissionYear.trim()) {
			wx.showToast({ title: '入学年份不能为空', icon: 'none' });
			return;
		}
		if (!password.trim()) {
			wx.showToast({ title: '密码不能为空', icon: 'none' });
			return;
		}
		return 1
	},

	async register() {
		const valid = this.validRegister()
		if (!valid) return
		
		// 此处做网络请求
		const { userId, username, college, className, sex, schoolYearSystem, admissionYear, role,password } = this.data.userInfo;
		try {
			const res = await login.registerDetailAPI({
				userId,
				username,
				college,
				className,
				sex,
				schoolYearSystem,
				admissionYear,
				role,
				avatarUrl: '', // 默认头像为空
				password,
			});
			console.log(res)
			if(res.meta.code !== 200) {
				return wx.showToast({
					title: res.meta.msg || '注册失败',
					icon: 'error'
				});
			}
			
			wx.showToast({
				title: '注册成功',
				icon: 'success'
			});
			
			// 注册成功后跳转到登录页面
			setTimeout(() => {
				wx.navigateTo({
					url: '/pages/login/login?role=student'
				});
			}, 1500);
		} catch (error) {
			console.error('注册失败:', error);
			wx.showToast({
				title: '注册失败，请稍后重试',
				icon: 'none'
			});
		}
	},
	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad(options) {

	},

	/**
	 * 生命周期函数--监听页面初次渲染完成
	 */
	onReady() {

	},

	/**
	 * 生命周期函数--监听页面显示
	 */
	onShow() {

	},

	/**
	 * 生命周期函数--监听页面隐藏
	 */
	onHide() {

	},

	/**
	 * 生命周期函数--监听页面卸载
	 */
	onUnload() {

	},

	/**
	 * 页面相关事件处理函数--监听用户下拉动作
	 */
	onPullDownRefresh() {

	},

	/**
	 * 页面上拉触底事件的处理函数
	 */
	onReachBottom() {

	},

	/**
	 * 用户点击右上角分享
	 */
	onShareAppMessage() {

	},
	pageLifetimes: {
		show() {
			if (typeof this.getTabBar === 'function' &&
				this.getTabBar()) {
				this.getTabBar().setData({
					selected: 0
				})
			}
		}
	}
})